#!/bin/bash

echo "🛑 停止所有服务..."

# 从 PID 文件停止服务
if [ -f "logs/frontend.pid" ]; then
    FRONTEND_PID=$(cat logs/frontend.pid)
    if kill -0 $FRONTEND_PID 2>/dev/null; then
        echo "停止前端服务 (PID: $FRONTEND_PID)"
        kill $FRONTEND_PID
    fi
    rm -f logs/frontend.pid
fi

if [ -f "logs/backend.pid" ]; then
    BACKEND_PID=$(cat logs/backend.pid)
    if kill -0 $BACKEND_PID 2>/dev/null; then
        echo "停止后端服务 (PID: $BACKEND_PID)"
        kill $BACKEND_PID
    fi
    rm -f logs/backend.pid
fi

# 强制停止端口占用进程
echo "🔍 检查端口占用..."
if lsof -Pi :8001 -sTCP:LISTEN -t >/dev/null 2>&1; then
    echo "强制停止端口 8001 的进程"
    kill $(lsof -Pi :8001 -sTCP:LISTEN -t) 2>/dev/null || true
fi

if lsof -Pi :3001 -sTCP:LISTEN -t >/dev/null 2>&1; then
    echo "强制停止端口 3001 的进程"
    kill $(lsof -Pi :3001 -sTCP:LISTEN -t) 2>/dev/null || true
fi

echo "✅ 所有服务已停止"